package org.jobtask.launch;

import org.jobtask.listener.Monitor;
import org.jobtask.ui.CommonComponents;
import org.jobtask.ui.ControlPanel;
/**
 * @category JobTask 
 * @version 1.2
 * @author 张波 Bob
 * @Description
 * <p>
 *    
 * </p>
 *
 */
public class TaskManager {
	
/**@Description
 * <strong>CommonComponents</strong>
 * <p>是组件集对象,应用程序的所有界面的元素都在此类中定义</p>
 * <strong>Monitor</strong>
 * <p>是程序监视器,也就是事件监听器,监听所有的事件动作</p>
 * <strong>ControlPanel</strong>
 * <p>控制面板类,是这个类才是界面初始化的地方,在这个类中,将所有的界面元素组合在一起并呈现界面</p>
 */
	private CommonComponents components=null;
	private Monitor monitor=null;
	
	public TaskManager(){
		this.init();
	}
	
	/**
	 * 在监听器中需要界面元素的引用,所以在构建监听器对象时,需要组件集对象来构造
	 * 然后将这两个元素都传递给控制面板类,监听器需要组件的引用,同样,组件也需要监
	 * 听器的引用,为了不引起相互引用产生的死锁,这里使用了控制面板类来初始化应用程序
	 */
	private void init(){
		components=new CommonComponents();
		monitor=new Monitor(components);
		new ControlPanel(monitor,components);
	}
	
}
